using System;
using System.Collections.Generic;
using System.Text;

namespace EuropeEngulfed.NET
{
    class LandRegion : Region
    {
        private MapInfo.CountryID originalCountry;
        private uint resourcePoints;
        private bool countryCapital;
        private bool homeRegion;
        private uint fortressLevel;
        private MapInfo.terrainType terrain;
        private MapInfo.weatherZone weatherZone;

        public LandRegion(MapInfo.RegionID EERegionID,
                                        string name,
                                        MapInfo.CountryID originalCountry,
                                        uint resourcePoints,
                                        bool countryCapital,
                                        bool homeRegion,
                                        uint fortressLevel,
                                        MapInfo.terrainType terrain,
                                        MapInfo.weatherZone weatherZone) : base(EERegionID,name)
        {
            this.originalCountry = originalCountry;
            this.resourcePoints = resourcePoints;
            this.countryCapital = countryCapital;
            this.homeRegion = homeRegion;
            this.fortressLevel = fortressLevel;
            this.terrain = terrain;
            this.weatherZone = weatherZone;
        }

        public bool HomeRegion
        {
            get
            {
                return homeRegion;
            }
        }

        public uint Fortress
        {
            get
            {
                return fortressLevel;
            }
        }

        public MapInfo.terrainType Terrain
        {
            get
            {
                return terrain;
            }
        }

        public MapInfo.weatherZone WeatherZone
        {
            get
            {
                return weatherZone;
            }
        }

        public MapInfo.CountryID OriginalCountry
        {
            get
            {
                return originalCountry;
            }
        }

        public override bool shouldBeAddedToMapGraph()
        {
            return true;
        }

        public override bool IsLandRegion()
        {
            return true;
        }

        public override bool IsSeaRegion()
        {
            return false;
        }

        public uint ResourcePoints
        {
            get
            {
                return resourcePoints;
            }
        }
    }
}
